Course Management
ERP Project Management
- Project Planning
- Happy Path Use Case
- Project Resources
Learn (Basics) - Using GardenWorld - Includes what 80% of users touch 80% of the time
- Getting Started
- Choose an iDempiere Distribution
- Installation (includes RDS and SSL - poor man's firewall, VirtualBox)
- Server Management (including backup, restore, phppgadmin, psql, disaster recovery, os user management chmod)
- Environment Management (first installation to production system - including golive checklist)
- Login
- Navigation
- Business Partner Basics (includes creating new users)
- Product Basics
- Charge Basics
- Organization and Role
- Order Management (Document Type, ...)
- Purchase Order Management
- Sales Order Management
- Precision (UOM, Currency, Price List, Costing)
- Material Receiving and Invoicing
- Material Management (Storage, Warehouse, Locators, Inventory Move and Physical Inventory)
- Date Material Policy and Movement Attributes
- Accounting (Schema, Trial Balance, Sub-Accounts, COA, Financial Reporting, Calendar, Period)
- GL Journal
- Requisitions (includes good workflow approval process, commitment or encumbrance accounting)
- Production (Simple Manufacturing)
- Shipping and AR Invoicing (Pick ticket)
- Invoicing, Payments and Allocation (Batch)
- Bank and Bank Statements
- Multi-Currency Accounting
- Libero (Complex Manufacturing)
- Customer and Vendor RMA (return or uplift)
- Serial and Lot Tracking
- Product Attributes, Serial, Lot (Attribute Sets, Attribute Values, Attribute Set Instance or ASI, etc..)
- Product Costing (Cost Element, Method, Type, Level, Future, Import, Reporting)
- CRM Customer Relationship Management
- Request Architecture (used for... ticketing, scheduled and corrective maintenance, scheduling, crm, drip marketing, inbound email support, ad-hoc workflow, etc...)
- Fixed Assets
- Swing Client
- Payroll
- Credit Management and Partner Relation
- Budgeting, Forecasting and Cash Planning
- Replenishment
- Landed Costing
- Projects (project accounting, timesheet accounting)
- Project Production/Manufacturing (watch Project first)
- Outsourced Production/Manufacturing (watch Project Production first)
- Resource Scheduling
- Document and Record Templates
- Open Source License Information (copyright, GPL, MIT, etc...)
Primers
- Accounting
- SQL Database Primer (and trouble shooting, locks, debugging, timezone, aggregate, performance, wal, cte, epoch)
- Eclipse and Java Primer
- Excel Macros Primer
- Linux Primer (includes connecting, file transfer, tunnel, troubleshooting, disk size, creating users, debugging scripts, rsync, ttyd)
- aichat Primer
- nginx
- Linux Containers Primer (Incus,LXD/LXC)
- Networking (IPv6)
- AWS Primer
- Passwords, gpg/pgp, Age, Rage, Credentials, Authentication and Secrets Primer
- Python Primer (pip, jupyter, langchain)
- Node Primer
- Markdown
- Whisper (openai)
Configure - Create your Own Client - Much more detail that what is covered in the Learn section
- Create 'Your' Client (create and import your COA)
- Production Installation and Hosting - (overview)
- Small System - less than 10 concurrent users
- Medium System - less than 100 concurrent users
- Large System more than 100 concurrent users (hot standby - read replica)
- iDempiere and PostgreSQL Database Performance Tuning (pgbadger)
- Installing iDempiere on Amazon’s PostgreSQL RDS Database
- Separating WebUI Hosting from Services
- haproxy - Application Server Load Balancing
- pgbouncer - Database Connection Pooling
- Separate iDempiere Reporting Platform or Data Warehouse
- Backup, Restore and the Go-Live Process
- OpenVPN and Wireguard Discussion, Configuration, and Installation (better firewall option, ufw)
- SSH Tunnels to Access Sensitive Data and Applications (Windows to Linux and Linux to Linux - phpmyadmin, phppgadmin and the iDempiere Server Monitor/Manager)
- Cash and Accrual Posting
- Record Import (upload Products, Business Partners, csv,json or just about anything... SQL, NextID, UUID)
- Managing Language/Translation (including locale, date and number format, and adding new languages)
- Sales, Purchase and VAT Taxes (parent, GST, PST, etc...)
- Withholding Tax
- Price List (upload missing entries, schema)
- Discount Schema, Discount Strategies and Promotions (reference price list and price list schema)
- Payment Terms and Aging - (includes prepayment)
- Printing (Print Format and Jasper Report - creating and deploying a Jasper Report to iDempiere from scratch)
- Commissions and Royalties
- Email Configuration and Usage (alpn)
- Request Email Processor – How to consume email (imap) into iDempiere (CRM, Support Tickets, Web forms, etc...)
- Invoice Delivery (Email and Print) and Dunning Run
- Drop Shipping
- Payment Selection (check run or payment run)
- Accounting - Petty Cash Drawer
- Accounting - Creating a custom posting user element or column to accounting schema dimensions
- Credit Card Processing (AP)
- Credit Card Processing (AR)
- Small Business Web + POS + Phone + Counter Sales
- Inter-Company Transactions, Transfer Pricing and Counter Documents
- End of Year (EOY) Accounting Close Process and Reporting (retained earnings)
- GL Distribution - swap account elements (Org, Account, Prod, BP, etc...) before a document posts. Example: swap revenue account to support Sales Region, Country, or BP based revenue recognition
- Customer and Vendor RMA - manual at go live (return or uplift)
- Schedule Emailed Reports and Processes (scheduler)
- Tasks
- Alerts - sending notifications via email (with attachments)
- Loans
- Post Dated Checks (Reference SAP Transfer Posting abilities)
- Data Export (includes high-volume)
- High Volume PSQL Export Query Results from DB to CSV File
- Create an Additional Accounting Schema
- Charts, Dashboards, Cockpits, and KPI
- Mobile Interface
- Recurring (Payments, Receipts, Invoices, GL Journals, Orders and Projects)
- Document Management (including attachments)
- Document Management 2.0 (DMS)
- Rental, Contract or Fleet Accounting Management
- Contract Management (Simple implementation)
- Logistics - how to model logistics operations in iDempiere
- Consignment Inventory
- Document Sequence (Primary Keys, Search Keys [value], Document No)
- Workflow (general workflow options and demo of traditional workflow)
- Workflow vs Request Architecture
- Kanban Board and Ad-hoc Workflow (Requests)
- Replication (includes references to webstore and POS integration)
- PostgreSQL Foreign Data Wrapper (FDW) for data migration - replication
- Multiple-Site iDempiere Replication with FDW
- Sales Region - Relation with Sales Rep and Accounting
- Product Unit of Measure (UOM) Conversion Demonstration
- Add UOM Field to Existing Windows
- Quick Info Widget - Right-side Panel Help, Insights and Zoom - Great for CRM
- Info Window - Creating custom search dialogs
- Clearing Not-Invoiced Receipts (NIR) and Inventory Clearing (IC) Open Balances
- Password Rules
- Creating a User that is Shared by Multiple Clients
- Home Page Activity (Activities) Count, Link and Zoom
Audit - Starts The Moment You Commit
- Documentation (see: Project Planning)
- Mock Go-Live Strategies
- Go-Live Inventory and Accounting Import (upload/establish opening balances)
- Backup, Restore and the Go-Live Process
- BSD - Balance Sheet Defense
- Automated Import Using ETL (Talend)
- Audit Summaries - your window into issues
- iDempiere Testing and Populate Framework - Recommended
- Automated and Regression Testing with FitNesse and Selenium
- Issues - known issues that cause problems
- End User go-live documentation (help, comment, tip-strips, descriptions, etc...)
Administration and Troubleshooting
- Problem Solving, Debugging, Reviewing Logs, and Trouble Shooting Issues - server crash, GC garbage collection
- Upgrade iDempiere - Keeping Your Application, Database and Code Up-To-Date
- Deploying and Controlling Plugins via OSGi Telnet Console
- Security and Stability (crowdsec)
- Monitoring (Website, Monit, DIY, Process, Java Heap)
- Installing a Plugin using the Felix Console (plus installing plugin jars manually)
- apache and haproxy server timeout (proxy,max connection, server error)
Customization
- Development and Deployment Best Practices - beginnings of a customer and developer bill of rights
- Important iDempiere Documentation
- Add your own logos, favicon, tab text
- Development Environment (eclipse)
- Automated Scripted Release Deployment
- Architecture - including context, window tab field, table column, data access level, more...
- Column SQL – Virtual Column
- Dynamic Validation - Limit field drop down options
- Setting Field Default Values - value preference, table and column default logic, window-tab-field default override
- Plugins, Packins and the Deployment Options to Connect Them (AdempiereActivator vs Incremental2PackActivator)
- Scripting
- iDempiere Developer Documentation
- Find iDempiere OSGi Plugin Interfaces or Extension Points
- Logging
- JVM Java Memory Profiling (JProfiler, VisualVM, JConsole)
- Loading and Saving Data using Model Persistence (db.java, database, transaction, timeouts, SQL)
- Quickly Create a new iDempiere Window From Scratch (includes adding a new drop down field pointing to a different window)
- Window Zoom Conditions - basic and advanced zooming options
- User Settings and Preference Tables (AD_Tab_Customization, AD_UserQuery, Search, Grid)
- Make Data from Other Sources Available from Current Window (Zoom Across, Sub-tab, Quick Info, Column SQL)
- 2Pack - Pack In - Pack Out
- Quick or Rapid Data Entry Options
- Product Scan Customization Example (beginner) - create and start plugin, Column SQL, Generate new Model, Create new Table and Window, Model Validator, Process, Deploy new code to Production via felix, pull plugin into a new Development Environment.
- Product Lot and Serial Scan Customization 2.0 iDempiere Plugin (serial and lot barcode scan to both iDempiere Attribute Set architecture and to a custom table)
- Document Validation Customization Example (advanced)
- Document Validation Version 2.0 (full iDempiere plugin)
- Object Tag and Search
- Enhanced Cycle Count
- Create Database Read Only User for Reporting - biaccess
- Reporting Directly from Excel (XLS)
- Business Intelligence (BI) Reporting (Jasper BI)
- Business Intelligence (BI) Version 2 – Metabase or Grafana (Preferred)
- Tableau Data Visuationlization (BI) Reporting
- Sample Customer or Vendor Statement Report
- Offering iDempiere in a SaaS Environment
- Creating Forms (like Google Forms or SurveyMonkey)
- Combined Aging
- Department Accounting (using Activity to create Departments)
- Updating iDempiere Core Project (includes building/deploying from Jenkins and Eclipse)
- Mercurial Source Code Control
- Git Source Code Control
- Mercurial Source Code Control Server (SCM)
- ADempiere Customization
- Import Validator - modify import processes without modifying core code.
- GL Transaction Validator - inspect or modify fact_acct posting records before they are posted or execute business logic after a document is posted.
- Jenkins Continuous Integration Build Server
- Customize iDempiere Look and Feel Theme
- Conditionally Change Color of a Window or Grid Field based on Window Type to Data (CSS, Ex: SO Orange and PO Blue)
- Warehouse Locator Enhancement
- Warehouse and Locator Scan Footprint Alternative
- Product Attribute Set Instance (ASI) Lot Serial Enhancement
- Integrating iDempiere with External Systems
- Web Services (SoapUI, Talend, Eclipse, Command Line)
- GPG, GnuPG, OpenPGP Encryption and Decryption
- Web Store and Point of Sale (POS) Integration Techniques
- Magento Installation
- Magento and General Webstore Quick Start - includes discussion of POS, nTier commerce, Groupon, ebay, etc...)
- Multiple Organizations where One Sells and the Other Manufacturers, Stocks and/or Imports
- Customer Replenish Class deployed with an OSGI Fragment
- Replenishment 2.0 - iDempiere Plugin
- Libero Mfg Plugin for iDempiere Installation - shows to download plugin from code and build new version
- Time-Based Relative Searches (Hours, Days, Months)
- Quick Search - super fast way of finding any record/document (Order, BP, Product, Payment, etc..) from a single search box.
- Quick Search Version 2 - option that is already built into iDempiere (preferred)
- Advanced Search - search for orders, invoices, etc.. by line information. Add as many columns and details as you wish. This enhancement also improves Business Partner Info to enable zooming to the documents.
- Business Partner Name Version Customization - solution where you can change the name of a Business Partner, keep the same Business Partner ID/Record (and all of its history) intact but still be able to produce historical documents with the correct historical name.
- Address Location Formatting - (C_Location_ID, C_BPartner_Location_ID and google maps link using Quick Info)
- Role Access Visibility - helps you create your own roles
- Advanced Role Data Access Scenarios
- Daily Banking - Bank Account cash balances and projection
- Notification Run - mass email, printed pdf and sms engine
- Workflow - Using Workflow to Create an Approval Process for Physical Inventory
- Workflow email - add email notification (with attachment) to the document (order) workflow completion process
- New Print Format - Create Print Format with View From Scratch
- CRM Mass Mailer (Customer, Vendor, Promotion, Service, can also be use to source email)
- High-Volume Record Count Upload/Import - demonstrated using CRM Lead records
- Slow Moving Stock Report - good example of in-window reporting and 2pack (pack in and pack out)
- Create Product Tree and Report by Summary Product - uses a recursive function to iterate down multiple tree nodes
- Department (departmental) Accounting and Financial Reports - how to reuse the Activity concept for Departments
- Creating a Single Financial Report to show multiple Departments, Projects, etc.. as separate columns
- iModelFactory and POWrapper – Extending an Existing Model with New Fields. Includes Trx Org discussion.
- Adding DocOptions and DocActions - How to add the Prepare action to a shipment/receipt
- Customizing The iDempiere Accounting Engine (fireDocValidate(), fireFactsValidate() and IDocFactory)
- ChuBoe Trial Balance - quick and easy way to view summarized trial balance details (use as Customer/Vendor Statement)
- Add Resource Assignment to a Project Line
- Creating a Website Based on iDempiere - JSF, Java Server Faces, Primefaces
- Using a normal iDempiere Window to act like an iDempiere form (and color using AD_Image)
- Calling a Process from another Process (from code)
- Automating GL Journal creation from a Report - (EOM GL Journals and Project WIP Time Clock Entries)
- Timesheet Log Entry, Approval, Reporting and Invoicing (Expense Report and Request)
- EDI - Electronic Data Interchange
- Graphing Historical Inventory Values (QtyOnHand) over Time
- Materialized Views – Caching Data in the Database to Make Views Much Faster
- Create a Multi-Selection and Rank tab
- Limiting Options in a Drop Down or Records in a Window by creating a Link Table to Restrict Access - example: only show warehouses where the user has been given access
- Production Order with multiple finished goods - can be used for disassembly and creation of By-Products
- Production Order with Fixed BOM Line Quantity
- Reverse Logistics (breakdown, decompose, dismantle, reuse, disposal, remanufacturing, refurbishing)
- Kitting at the Time of Order - expanding a BOM in your Sales Order
- Expense Products After Material Receipt
- How to Convert Numbers into Words (Payment or Check Printing)
- Change/Script the Document Status (DocAction) on many records at once (mass complete or reverse any document)
- Posting and Financial Analysis of Shared Physical Warehouses
- AP vs AR and Regular vs Credit Memo Multiplier Functions
- Advanced Text Formatting and Aggregation Using a Function
- Convert Rows or Arrays to Comma Delimited Strings
- Employee Organization Chart / Tree (HR Human Resources Example) (Recursive)
- Field Validation with WEditor, ListDataListener, ContextMenuListener, IZoomableEditor, IEditorFactory
- BOM Drop (Sales Product Configurator, Quote Estimator, Make to Order)
- Multiple BOM per Product
- User Query - Saved Searches - how to view, copy/share, delete saved window searches
- Clean Part Number (CleanMPN)
- Dynamic Labels (label changes based on the data in your record/system)
- Create a Change Log for Text Long Field
- Update Period Name with YYYY-MM Formatting
- Update Charge Name to Include Account Number Suffix
ERP Academy iDempiere Releases
- Overview
- ERP Academy iDempiere Distribution Release Work Instructions
- 20170113
- 20170530
- 20180126
- 20200330 - Logilite 6.2
- 20201004 - Logilite 7.1
- 20231218 - Logilite 9 development environment setup guide
Other Resources
- Zellij
- Nushell
- Starship Prompt CLI
- Github for project management
- Kafka Introduction
- Machine Learning as it Relates to ERP
- Create iDempiere Demo System - Automated
- OFBiz quick evaluation
- Metasfresh quick evaluation
- Meteor JavaScript Application Framework
- Camunda BPMN Business Process Modeling and Notation - also DMN or Data Table Lookup
- Script to Create a New Linux User with SSH Key
- AWS Tools and Scripts (dynamic DNS, change size disk/volume/block)
- Adminer PostgreSQL Admin Tool Review
- Pinta Work Instructions
- Spinning Wheel Processing Webui - Chrome
- 2015 iDempiere World Conference
- NFS Server on Ubuntu (File Share)
- MySQL Integration Topics
- NixOS
- dbt - Data Transformation Pipeline Warehouse
- Lightdash - coming soon... - BI designed for lightdash - see dbt page for demo
- World Clock Timezone Convert
- node, react, nvm, npm